home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / usr / lib / nib / subproj.make < prev   
Text File  |  1991-12-21  |  3KB  |  98 lines

  1. #
  2. # NOTE: Do NOT change this file -- InterfaceBuilder depends on it.
  3. #
  4. SUPPORTFILES = IB.proj Makefile makefile IB.paletteheader \
  5.     Makefile.preamble Makefile.postamble
  6. SRCFILES = $(CLASSES) $(CLASSES:.m=.h) \
  7.     $(LOCAL_CLASSES) $(LOCAL_CLASSES:.m=.h) \
  8.     $(MFILES) $(CFILES) $(HFILES) $(PSWFILES) $(PSWMFILES) \
  9.     $(INTERFACES) $(TIFFFILES) $(EPSFILES) $(SNDFILES) \
  10.     $(OTHERSRCS) $(OTHER_SOURCEFILES)
  11. OFILES = $(SUBPROJECTS:.subproj=.o) \
  12.     $(PSWFILES:.psw=.o) $(PSWMFILES:.pswm=.o) $(CLASSES:.m=.o) \
  13.     $(LOCAL_CLASSES:.m=.o) $(MFILES:.m=.o) $(CFILES:.c=.o) $(OTHER_OFILES)
  14. ALL_OBJECT_FILES = $(OFILES) $(OTHER_LIBS) $(LIBS)
  15. EARLY_HEADERS = $(PSWFILES:.psw=.h) $(PSWMFILES:.pswm=.h) \
  16.     $(SUBPROJECTS:.subproj=.h)
  17. PRODUCT_DEPENDS =  $(EARLY_HEADERS) $(OFILE_DIR) \
  18.     $(OFILES) "$(OPROD_DIR)" $(OTHER_OFILES) \
  19.     $(INTERFACES) $(TIFFFILES) $(EPSFILES) $(SNDFILES) \
  20.     $(OTHER_PRODUCT_DEPENDS)
  21. OPROD_DIR = ../$(OFILE_DIR)
  22. O_PRODUCT = $(OPROD_DIR)/$(NAME).o
  23. H_PRODUCT = $(NAME).h
  24. LD_PRODUCT = ../$(OFILE_DIR)/$(NAME).ldflags
  25. GARBAGE = $(PSWFILES:.psw=.c) $(PSWMFILES:.pswm=.m) \
  26.       obj debug_obj profile_obj $(OTHER_GARBAGE)
  27. PUBLIC_HFILES = $(CLASSES:.m=.h) $(HFILES) \
  28.     $(PSWFILES:.psw=.h) $(PSWMFILES:.pswm=.h)
  29.  
  30. #
  31. #
  32. #
  33.  
  34. all::
  35.     @$(MAKE) $(H_PRODUCT) $(O_PRODUCT) $(LD_PRODUCT)
  36.     @cp $(H_PRODUCT) ..
  37.     @touch $(O_PRODUCT) $(LD_PRODUCT)
  38.  
  39. ofiles::
  40.     @$(MAKE) $(O_PRODUCT) $(LD_PRODUCT)
  41.     @touch $(O_PRODUCT) $(LD_PRODUCT) ../$(H_PRODUCT)
  42.  
  43. headers::
  44.     @/bin/rm -f ../$(H_PRODUCT)
  45.     @if [ -r $(H_PRODUCT) ]; then \
  46.         echo cp $(H_PRODUCT) .. ; \
  47.         cp $(H_PRODUCT) .. ; \
  48.     else \
  49.         echo '/* $(NAME).h\n  ' `date` '\n*/\n' > ../$(H_PRODUCT); \
  50.         for i in $(PUBLIC_HFILES) none ; do \
  51.         if [ $$i = none ] ; then continue; fi; \
  52.         echo -n '#import "$(NAME).subproj/' >> ../$(H_PRODUCT); \
  53.         echo -n $$i >> ../$(H_PRODUCT); \
  54.         echo '"' >> ../$(H_PRODUCT); \
  55.         done; \
  56.         echo 'generate ../$(H_PRODUCT)' ; \
  57.     fi
  58.  
  59. clean:: $(NAME).clean $(SUBPROJECTS:.subproj=.clean)
  60.  
  61. depend: Makefile.dependencies $(SUBPROJECTS:.subproj=.depend)
  62.  
  63. installsrc:: $(NAME).installsrc $(SUBPROJECTS:.subproj=.installsrc)
  64.  
  65. include $(MAKEFILEDIR)/common.make
  66.  
  67. #
  68.  
  69. "$(OPROD_DIR)":
  70.     @mkdirs $@
  71.  
  72. $(O_PRODUCT):: $(PRODUCT_DEPENDS)
  73.     ld $(ALL_OBJECT_FILES) -r -o $(O_PRODUCT)
  74.  
  75. $(LD_PRODUCT):: $(O_PRODUCT) Makefile
  76.     @-/bin/rm -f $(LD_PRODUCT)
  77.     @ldflags="$(LDFLAGS)"; \
  78.     for i in $(INTERFACES) nonibfiles ; do \
  79.         if [ $$i = nonibfiles ] ; then continue; fi; \
  80.         ldflags="$$ldflags -sectcreate __NIB $$i $(NAME).subproj/$$i"; \
  81.     done; \
  82.     for i in $(TIFFFILES) notifffiles ; do \
  83.         if [ $$i = notifffiles ] ; then continue; fi; \
  84.         ldflags="$$ldflags -sectcreate __TIFF $$i $(NAME).subproj/$$i"; \
  85.     done; \
  86.     for i in $(EPSFILES) noepsfiles ; do \
  87.         if [ $$i = noepsfiles ] ; then continue; fi; \
  88.         ldflags="$$ldflags -sectcreate __EPS $$i $(NAME).subproj/$$i"; \
  89.     done; \
  90.     for i in $(SNDFILES) nosndfiles ; do \
  91.         if [ $$i = nosndfiles ] ; then continue; fi; \
  92.         ldflags="$$ldflags -sectcreate __SND $$i $(NAME).subproj/$$i"; \
  93.     done; \
  94.     echo $$ldflags > $(LD_PRODUCT)
  95.     @echo 'generate $(LD_PRODUCT)'
  96.  
  97.  
  98.